(include "data-structures.scm")

(define-woof-structure person hands feet)
(define-woof-structure aemon hands feet hair shirt)

(run-tests
 (list
  (lambda ()
    (let ((p (make-person 4 5))
	  (a (make-aemon 2 4 'brown 'red)))
      (assert-equal? (aemon-hands a) 2
		     msg: "Should be able to use 'aemon' accessor on 'aemon' structure")
      (assert-equal? (person-hands a) 2
		     msg: "Should be able to use 'person' accessor on 'aemon' structure")
      (assert-true (aemon? a) msg: "'a' Should be an aemon.")
      (assert-true (person? p) msg: "'p' Should be a person.")
    ))

  ))
